Index
CopyWiz™

Overview

Basics

System RequirementsCopyright, License, & Warranty

Ordering CopyWiz

How to Register

Support


CopyWiz Overview
CopyWiz - Visual Studio Project Copy Wizard

CopyWiz can be used to perform one or more of the following operations on Microsoft Visual Basic and Visual C++ projects (version 5.0 or 6.0):

•	Copy a project to a new location

•	Rename an existing project

•	Fix up project directories/paths

•	Replace all GUIDs in a project (Visual C++ COM projects only)

Step 1

Use the first wizard screen to select the Visual Basic or Visual C++ project file to process.  You can choose from a list of recent projects, or enter/browse to a project filename.  The wizard handles VBP, DSP, VCP, and EBP files.  CopyWiz operates on individual projects only and not multi-project workspaces or project groups.

Step 2

After choosing a project filename and clicking Next, CopyWiz parses the project file to determine its name, and displays the name on the second wizard step.  The following selections are provided:

Copy to a New Location? This option determines if the selected project is copied to a new location.  If Yes is chosen, a valid destination must be selected or entered; the project and its files will be copied to the new location (the original project will not be modified).  If No is chosen, the selected project will be modified in place.  Important: Always backup your project files before using the wizard, especially when not copying to a new location (your existing project files will be modified in this case).

Rename the Project? If copying, this option determines if the project filename and name will be changed when the project is copied. If not copying, this specifies how to rename an existing project.  CopyWiz uses an intelligent algorithm based on the project type to identify strings within the project’s files that contain the project name/filename, so that even for simple project names (i.e., “test”), only the appropriate matching strings are modified.  In addition to changing all project name occurrences within the project files, all project filenames that are prefixed with the project name are modified to match the new project name (and any references to these files are also updated).

Fix Up Project Directories? If this question is answered “Yes”, when copying or renaming the project, the wizard also fixes up all absolute and relative path and filename strings in the project file.  Any absolute paths are first converted to paths that are relative to the project’s location; existing relative paths are converted to the minimum necessary relative path. This can be useful for updating existing projects to fix up include paths and file paths that were incorrectly specified as absolute paths or relative paths that specified more levels than necessary.  For instance, the following table shows how path/filename strings encountered in a project located at \app1\test1\source\project1 would be fixed up:

Original Value	Fixed Up Value
\app1\test1\executables	..\..\executables
..\..\..\executables	..\..\executables
\app1\test1\source\common	..\common
..\..\common	..\common
\app2\common	..\..\..\..\app2\common

Point Relative Directories Back to Original Project Location?  This option is enabled when copying to a new location and fixing up directories.  When copying to a new location, the wizard can either:

1)	If Yes is chosen, make relative paths in the project point to their original path.  For instance, if a project was copied from \app1\source\test1 to \app1\test1\source, and one of the files in the project was located at ..\common (\app1\source\common), that path would be changed to ..\..\source\common in the copied project.  This choice can be handy for moving existing projects up or down one or more levels in your project directories.

1)	If No is answered, leave the canonical relative path as it was after fixing up.  In the previous sample, the path would be copied as ..\common.  Since the path would no longer point to the original file, the files in the path \app1\source\common would also be copied to a new folder \app1\test1\common by CopyWiz.

Note: Paths that specify the location of the project’s executable filename or compatible EXE are always fixed up using option 2, regardless of how this question is answered.

Replace GUIDs? This question applies only to Visual C++ COM projects.  When processing a project, all GUIDs are identified and replaced with new GUIDs.  This is very useful when copying an existing project to prevent the old and new projects from clashing when registered; it can also be used to modify an existing project that was copied manually (if the GUIDs were not updated).

Step 3

The third wizard step is used to review and process your selections.  After reviewing the changes that will be made, click Next to begin processing.  The wizard parses the Visual Basic or Visual C++ project file to determine the files that comprise the project.  Only project files located in the project directory or one of its subdirectories are processed (project files in common include directories in a lower or parallel directory level will not be copied).  C++ include files that are not part of the project will not be copied (it is recommended that these files be added to the project first).  If the project is being renamed, each filename in the project that begins with the project filename root is renamed to match the new project name.  For instance, in a project MyApp.dsp being copied and renamed to NewApp, the project files MyApp.cpp and MyAppView.cpp would be copied as NewApp.cpp and NewAppView.cpp.

The project file and its constituent files are traversed, and if the project name is being changed, any instances of the old project name/filename root are replaced with the new project name (any binary files in the project are copied unchanged); any path/filename strings are updated as necessary; and all GUIDs are replaced with new ones (VC++ projects only).  If the project is being copied to a new location, the original files are not modified, and the new files are written to the destination path; if the project is not being copied, the existing project files are modified.

Step 4

After processing is complete, the last wizard step is displayed.  To open the new or updated project immediately, check the checkbox and click Finish.  The project will be opened in the Visual Basic or Visual C++ IDE, where it can be built, modified, and debugged as needed.  The The first time a new DSP is opened, the Visual C++ IDE will create a DSW for it and display a message about it finding an associated workspace file and opening it instead.


CopyWiz Details
CopyWiz - Details

CopyWiz parses individual project files (and their constituent files) and performs replacements on filenames, project names, GUIDs, and directory paths based on the user’s selections in the wizard.  For Visual C++ projects, the following strings will be matched and replaced within filenames and project files (matching is non-case-sensitive):

•	CProjName

•	IProjName

•	_ProjName

•	ProjName_

•	"ProjName"

•	"ProjName<white space>

•	"ProjName\0

•	<white space>ProjName"

•	<white space>ProjName<white space>

•	<whitespaces>ProjNameLib

•	ProjName -

•	=ProjName<end of line>

•	ProjFileName.

•	<white space>ProjFileName*.

•	\ProjFileName*.

•	"ProjFileName*.

For Visual Basic projects, the following strings are matched and replaced:

•	"ProjName"

•	<white space>ProjName"

•	<white space>ProjName<white space>

•	ProjFileName.


License, Copyright, and Warranty
Copyright, License, & Warranty

CopyWiz™ - Visual Studio Project Copy Wizard, Copyright © 2001 Kinook™ Software, Inc.

All Rights Reserved.

License Agreement

This End-User License Agreement ("EULA") is a legal agreement between you (either an individual or a single entity) and Kinook™ Software for the software product identified above, which includes computer software and may include associated media, printed materials, and "online" or electronic documentation ("SOFTWARE PRODUCT").  By installing, copying, or otherwise using the SOFTWARE PRODUCT, you agree to be bound by the terms of this EULA. If you do not agree to the terms of this EULA, do not install or use the SOFTWARE PRODUCT.

SOFTWARE PRODUCT LICENSE

The SOFTWARE PRODUCT is protected by copyright laws and international copyright treaties, as well as other intellectual property laws and treaties. The SOFTWARE PRODUCT is licensed, not sold.

1. GRANT OF LICENSE. This EULA grants you the following rights:

Software. You may install and use one copy of the SOFTWARE PRODUCT on a single computer, including a workstation, terminal or other digital electronic device ("COMPUTER"). If multiple licenses have been purchased, the computer software portion of the SOFTWARE PRODUCT may be installed and used by the same number of people as licenses purchased. If a Site License has been purchased, an unlimited number of people at a single physical location may installand use the SOFTWARE PRODUCT.

Storage/Network Use.  You may also store or install a copy of the computer software portion of the SOFTWARE PRODUCT on the COMPUTER to allow your other computers to use the SOFTWARE PRODUCT over an internal network, and distribute the SOFTWARE PRODUCT to your other computers over an internal network.  However, you must acquire a license for the SOFTWARE PRODUCT for each computer on which the SOFTWARE PRODUCT is used or to which it is distributed.  A license for the SOFTWARE PRODUCT may not be shared or used concurrently on different computers.

Backup Copy.  You may make a single backup copy of the SOFTWARE PRODUCT.  You may use the backup copy solely for archival purposes.

Evaluation Use.  You may use the evaluation version of the SOFTWARE PRODUCT for evaluation purposes without charge for a period of 15 days.  If you use this software after the 30-day evaluation period, a license for the non-evaluation version must be purchased.  When payment is received you will be sent a registration code to enable the full functionality of the SOFTWARE PRODUCT.

2. DESCRIPTION OF OTHER RIGHTS AND LIMITATIONS.

Limitations on Reverse Engineering, Decompilation, and Disassembly.  You may not reverse engineer, decompile, or disassemble the SOFTWARE PRODUCT, except and only to the extent that such activity is expressly permitted by applicable law notwithstanding this limitation.

Separation of Components.  The SOFTWARE PRODUCT is licensed as a single product. Its component parts may not be separated for use on more than one computer.

Single Computer.  The SOFTWARE PRODUCT is licensed with the COMPUTER or to a SITE as a single integrated product.  Unless a site license or corporate license is purchased, the SOFTWARE PRODUCT may only be used with the COMPUTER.

Rental.  You may not rent or lease the SOFTWARE PRODUCT.

Software Transfer.  You may not transfer your rights under this EULA.

Termination.  Without prejudice to any other rights, Kinook™ Software may terminate this EULA if you fail to comply with the terms and conditions of this EULA.  In such event, you must destroy all copies of the SOFTWARE PRODUCT and all of its component parts.

3. COPYRIGHT.

All title and copyrights in and to the SOFTWARE PRODUCT (including but not limited to any images, photographs, animations, video, audio, music, text, and "applets" incorporated into the SOFTWARE PRODUCT), the accompanying printed materials, and any copies of the SOFTWARE PRODUCT are owned by Kinook™ Software.  The SOFTWARE PRODUCT is protected by copyright laws and international treaty provisions. Therefore, you must treat the SOFTWARE PRODUCT like any other copyrighted material except that you may install the SOFTWARE PRODUCT on a single computer provided you keep the original solely for backup or archival purposes.

Disclaimer of Warranty

NO WARRANTIES.

Kinook™ Software expressly disclaims any warranty for the SOFTWARE PRODUCT. The SOFTWARE PRODUCT and any related documentation is provided "as is" without warranty of any kind, either express or implied, including, without limitation, the implied warranties or merchantability, fitness for a particular purpose, or noninfringement. The entire risk arising out of use or performance of the SOFTWARE PRODUCT remains with you.

NO LIABILITY FOR DAMAGES.

In no event shall Kinook™ Software be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or any other pecuniary loss) arising out of the use of or inability to use this product, even if Kinook™ Software has been advised of the possibility of such damages.


About Dialog

Displays the about box which shows program version, copyright, and license information.

If the product has been licensed, the dialog will display ‘This Product is Licensed.’

If this is an evaluation version, the dialog will show how the number of days remain in the evaluation period; a Register button is also displayed for entering the product registration code received after purchasing a license for CopyWiz.  When the evaluation period has expired, the product cannot be used until it has been licensed and registered.  After purchasing, click the Register button and follow the directions for turning the evaluation version into a licensed version.


Register CopyWiz

If you paid the CopyWiz registration fee and received a registration code from Kinook Software, Inc. or an authorized reseller, please enter the registration code exactly as it appeared in the instructions you received when you registered. If entered correctly, the About dialog box will indicate that the product is licensed, and the registration reminder dialog box will no longer be displayed on startup.  Please save this information for possible use with future upgrades or in case you re-install CopyWiz.

If you downloaded an evaluation version of CopyWiz, or if you received this version of CopyWiz on a disk or CD with a book or with other hardware or software, and you have not paid the CopyWiz registration fee, you are licensed to use CopyWiz for evaluation purposes only for a period of 15 days.

For information on purchasing a license to use CopyWiz for non-evaluation purposes, see the Order Information section.


CopyWiz Support

To check whether you have the most recent version of CopyWiz, please check the Kinook Software home page at http://www.kinook.com.

Technical support is available at no charge as described below.  Report problems by sending e-mail to support@kinook.com.

When reporting problems, please include the following information:

1.	Is the problem reproducible?  If so, how?

2.	What version of Windows are you running?  For example, Windows 95, Windows NT 4.0 Service Pack 3, etc.

3.	What version of CopyWiz are you running?  Select About from the wizard’s system menu.  Include the entire version line in your problem report.

4.	If a dialog box with an error message was displayed, please include the full text of the dialog box, including the text in the title bar.

Note: You can press F1 at any time while CopyWiz is active for context sensitive help.


System Requirements

CopyWiz requires Windows 95 OSR2, Windows 98, Windows Me, Windows NT 4.0, Windows 2000, Windows XP or later.


Ordering
CopyWiz Ordering Information

All orders are subject to the CopyWiz License Agreement.  The registered version does not display the about dialog on startup and does not limit the number of steps in a project.

Immediate online delivery of registered copies of CopyWiz is available for credit card orders placed via the Internet from the CopyWiz home page at http://www.kinook.com.  If you prefer, CopyWiz can also be ordered by telephone, fax, mail, or by purchase order.  Please visit the web page for pricing and ordering details.

Customer information is considered confidential and will not be shared or distributed to any third party.